Shared software agent for customer relations management services

ABSTRACT

A method for implementing a customer relationship management system can include establishing a plurality of customer contact channels within a customer relationship management services system. A software component can be associated with each of customer contact channels. A shared software agent can be accessed by software components through a publicly accessible network. The shared software agent performs at least one data management task and displays at least one visual element within a graphical user interface of an accessing software component.

BACKGROUND OF THE INVENTION

[0001] 1. Technical Field

[0002] The present invention relates to the field of software andelectronic business, and more particularly, to a system and a method forproviding customer relationship management.

[0003] 2. Description of the Related Art

[0004] Businesses constantly strive for customer approval andsatisfaction. One method businesses can use to differentiate themselvesfrom each other is through customer relationship management (CRM)services. By providing additional product information, personalizedcustomer incentive plans and product support, businesses hope to buildand sustain long-term customer loyalty. These services, however, areoften expensive to implement. Further complicating matters is thetendency of customers to interact with a business using multiple mediumsor distribution channels.

[0005] Distribution channels for business products can include but arenot limited to, the Internet, retail outlets, wholesale outlets, andtelephone centers. As technology improves, more customers utilizemultiple distribution channels in making purchases. For example, aperson purchasing an airline ticket may check prices on several Websites, and then purchase a ticket by placing a telephone call to aservice representative. Similarly, a car purchaser may research productson the Internet and ultimately purchase a vehicle at a dealership.Unfortunately, it is not uncommon for offers to be different from onedistribution channel to the next. For example, an airline ticket dealposted on the Internet may be unavailable for telephone purchasers.

[0006] Customers become frustrated when one distribution channel cannothonor specials or deals disclosed by another distribution channel withina given business entity. Effective integration of business channelsbecomes even more important when a business incorporates some form ofcustomer incentive program, such as frequent flyer miles. Customers canbecome quite upset when a promised incentive is not recognized by achosen distribution channel. In fact, inconsistencies relating tocustomer loyalty programs among the various distribution channels of abusiness can have the net result of alienating, not rewarding,customers.

[0007] To limit discrepancies among channels, conventional CRM systemsattempt to share data. This sharing usually occurs between otherwiseautonomous applications across a network, wherein each applicationmaintains its own distinct implementation for data management andgraphical user interface (GUI) functions. Implementation and maintenanceexpenses relating to conventional CRM systems composed of many discreteapplications, however, can be substantial.

[0008] Consider, for example, likely implementation costs associatedwith a conventional CRM system. Initially, a CRM implementer needs toresearch retail solutions to determine which, if any, satisfy the needsof the business for which the CRM system is intended. Should noacceptable solution exist, custom software must be developed.Furthermore, special care is necessary to ensure that all chosen CRMapplications are compatible with one another. Often compatibilityrequires that information be converted from one format to another. Forexample, a Web site may utilize markup language formatted data, such asHypertext Markup Language (HTML) format, while a retail application canutilize a database format, such as Structured Query Language (SQL).

[0009] Additionally, complications necessary for implementing a CRMsystem can result in extensive maintenance and training costs. To avoidthese costs, businesses often make compromise choices that limit datasharing among the various CRM applications. Accordingly, information isnot perfectly synchronized among CRM applications, resulting indifferent information being available through different distributionchannels. Such inconsistencies can result in discrepancies amongdistribution channels and customer dissatisfaction.

SUMMARY OF THE INVENTION

[0010] The invention disclosed herein provides a cost effective methodfor implementing a customer relationship management (CRM) system. Inparticular, the present invention contemplates the existence of a sharedsoftware agent that can share both graphical and data managementfunctionality across a publicly accessible network. Accordingly, eachapplication within a CRM system can access the shared software agent,gaining substantial functionality without the need for duplicativeimplementation within each CRM application. For example, an airline canimplement a shared software agent that includes frequent flyerinformation. This shared software agent can then be accessed by acustomer through a kiosk or Web site as well as by service centerpersonnel. Storing customer information within a shared software agentto be accessed by multiple CRM applications can greatly reduce thecomplexity of individual applications while providing access tonecessary information.

[0011] One aspect of the present invention can include a method forimplementing a customer relationship management (CRM) system that caninclude many customer contact channels or interaction points.Accordingly, the method associates at least one CRM application witheach customer contact channel. Thus, a CRM application can be designedeither for authorized business personnel or for customer access. Aparticular CRM application, a call center application, can access eachof the shared software agents within the CRM system. For example, if theCRM system contains multiple shared software agents, the call centerapplication can access each individual shared software agent. ExemplaryCRM business applications include applications for sales personnel, dataanalysis and campaign management. Sample customer applications include aWeb site and a retail self-help kiosk.

[0012] Notably, the CRM applications can access one or more sharedsoftware agents using a publicly accessible network, such as theInternet. Thus, each of these shared software agents contains bothvisual and data management elements. Accordingly, the elements of theshared software agent operate independently of the CRM applicationaccessing them. Additionally, multiple CRM applications cansimultaneously access a particular shared software agent.

[0013] For example, the display and functionality of the Web site can beexclusively provided by the shared software agent accessed through acustomer'S Web browser. Furthermore, a call center application cancontain an integrated view within its graphical user interface thataccesses the shared software agent. Both the call center and customernow have identical, but independent, access to shared software agentinformation.

BRIEF DESCRIPTION OF THE DRAWINGS

[0014] There are shown in the drawings embodiments, which are presentlypreferred, it being understood, however, that the invention is notlimited to the precise arrangements and instrumentalities shown.

[0015]FIG. 1 is a schematic diagram illustrating a system for customermanagement in accordance with the inventive arrangements disclosedherein.

[0016]FIG. 2 is a schematic diagram illustrating a graphical userinterface for use with the system of FIG. 1.

[0017]FIG. 3 is a flow chart illustrating a method of responding to acustomer inquiry using the system of FIG. 1.

DETAILED DESCRIPTION OF THE INVENTION

[0018] The invention disclosed herein provides a solution forimplementing a customer relationship management (CRM) system overmultiple distribution channels. In particular, the present inventionutilizes a shared software agent. The shared software agent can includeboth graphical and data management functions that can be accessed acrossa publicly accessible network by one or more CRM applications. Aparticular CRM application referred to as a call center application canaccess each of the shared software agents within the CRM system.Notably, each CRM application that accesses a shared software agent canprovide its users with any published capabilities of the shared softwareagent. Accordingly, the present invention provides a CRM system thatrequires less maintenance than conventional CRM applications.

[0019]FIG. 1 is a schematic diagram illustrating a system 100 forcustomer management in accordance with the inventive arrangementsdisclosed herein. As shown in FIG. 1, the system 100 can include a callcenter application 105, a kiosk 110, a customer access point 115, acustomer access point 120, and a shared software agent 125, eachcommunicatively linked via a communications network 130. The call centerapplication 105 can contain customer specific information includingcustomer purchase histories, product pricing information, productinventory and warranty information, as well as customer loyalty programmanagement data. A graphical user interface (GUI) of the call centerapplication 105 can contain a plurality of views A, B, and C. Each CRMview published by the shared software agent 125, such as views A and Bcan be accessed by the call center application 105.

[0020] The kiosk 110 can include an assortment of interactive computingdevices connected to the communications network 130 intended forcustomer use. For example, the kiosk 110 can be implemented as anin-store inventory search terminal, such as a book locator as is used bymany book retailers. Further examples of kiosk 110 implementations caninclude, but are not limited to, an employee hiring station, a creditcard or membership center, and an item pickup station. Although depictedas containing two views A and D, a GUI of the kiosk 110 can contain anynumber of views.

[0021] Notably, view A can include one or more visual elements accessedfrom the shared software agent 125.

[0022] Customer access point 115 can be implemented in many differentmanners across a multiplicity of distribution channels. For example,when a distribution channel is a Web site, customer access point 115 canrepresent a customer at home accessing the Web site with a Web browser.In such an instance, the information displayed within the Web browsermay consist entirely of the view B generated by the shared softwareagent 125. Alternatively, when a distribution channel is a retailoutlet, the customer access point 115 can represent a computer used bythe retailer to record purchasing information. When used by a retailer,customer access point 115 also can include business specific informationas well as information relating to a customer. Accordingly, the sharedsoftware agent 125 accessed by the customer access point 115 can containboth business and customer information.

[0023] Another configuration of a CRM customer access point isrepresented by customer access point 120. Customer access point 120 cancontain both customer and business information. In such an instance,view B, can contain customer specific information, and view E, notaccessed across the communications network 130, can contain businessspecific information.

[0024] Notably, multiple customer access points, such as customer accesspoints 115 and 120, as well as the call center application 105 canindependently and simultaneously access view B generated by the sharedsoftware agent 125. Such commonality across system 100 can reduceemployee training costs and present customers with a consistentinterface across many CRM applications.

[0025] As previously noted, shared software agent 125 can be configuredto independently perform data management and graphical functions withinsystem 100. The shared software agent 125 can be implemented using anyof a variety of techniques. For example, the shared software agent 125can be implemented as an applet, accessible through an Internet Webbrowser. Alternatively, the shared software agent 125 can be an Internetenabled object linking and embedding (OLE) or OpenDoc object.Implementation of the shared software agent 125 is not limited to anyparticular standard or protocol.

[0026] Structurally, the shared software agent 125 can contain both adata segment and an interface segment. Although the shared softwareagent 125 can be communicatively linked to one or more distributed datastores, according to one embodiment of the present invention, the sharedsoftware agent 125 can internally store and manage data. The interfacesegment of the shared software agent 125 can include event-active visualcomponents, such as check boxes or buttons. Furthermore, the sharedsoftware agent 125 can contain positional information concerning itsvisual elements. Such positional information can assure that visualelements within the software agent 125 retain spatial locations relativeto one another when presented through one or more of the distributionchannels. In consequence, the shared software agent 125 can concurrentlyor individually provide data, functions and graphical user interfaces toone or more of the CRM applications including customer access points 115and 120, kiosk 110, and/or the call center application 105. Furthermore,each presentation of graphic elements and/or data which is obtained fromthe shared software agent 125 within a CRM application is independent ofother presentations of graphic elements and/or data which are obtainedfrom the same shared software agent 125 within a different CRMapplication.

[0027]FIG. 2 is a schematic diagram illustrating an exemplary GUI 200for use with the system of FIG. 1. More particularly, the GUI 200 can bepresented by the call center application used with the CRM system. TheGUI 200 can include a call center view 205 within which visual elementsof the call center application are displayed. Some of the visualelements displayable within the call center view 205 can include a callcenter menu bar 210, an authorized view 220, a shared software agentview 225, and a shared software agent selection mechanism 215. Theauthorized view 220 can contain information not generally available to acustomer. Notably, info presented within view 220 as well as the view220 itself can be implemented locally and not accessible across anetwork.

[0028] The shared software agent selection mechanism 215 can provide ameans for displaying shared software agent views. Although illustratedas a tabbed view selector, the invention is not limited to anyparticular implementation. For example, the shared software agentselection mechanism 215 can be a toolbar, wherein selection of a givenshared software agent opens a view within the call center view 205. Inanother embodiment, the shared software agent selection mechanism 215can be implemented as a pull down menu selectable from the menu bar 210,for example by accessing the “Screens” choice.

[0029] The shared software agent view 225, being disposed within thecall center view 205, can display visual elements generated by a sharedsoftware agent. A single view, such as the one depicted, can be utilizedby multiple shared software agents. For example, view 225 can displaykiosk visual elements and/or views generated by a kiosk shared softwareagent. Responsive to the shared software agent selection mechanism 215,view 225 can alternatively display customer access point visual elementsor entire views generated by a customer access point shared softwareagent. In one embodiment, the shared software agent view 225 can be abrowser window located within the call center view 205 capable ofaccessing shared software agents. In another embodiment, a plurality ofshared software views 225 can be displayed within a call center view205, each shared software view 225 associated with a particular one ofthe shared software agents of a given CRM system, and accordingly beingassociated with a particular distribution channel.

[0030] A customer name 230 and customer password 235 prompt can appearwithin the shared software agent view 225. The invention can provide amechanism for authorized business personnel to accesscustomer-restricted information without entering a customer'S password235. For example in one embodiment, a call center employee can have amaster password. Hence, upon entering a customer name 230, therepresentative can enter the master password when prompted for password235.

[0031]FIG. 3 is a flow chart illustrating a method 300 of responding toa customer inquiry using the system of FIG. 1. The method 300 can beperformed in the context of a CRM system that utilizes one or moreshared software agents. The method 300 can begin in step 305 when a callcenter employee receives a customer inquiry. For example, a customerutilizing a kiosk can use a mechanism within the kiosk to contact a callcenter representative. Exemplary contact mechanisms within a kiosk caninclude, but are not limited to, a telephone, a teleconferencing window,a chat window, and an instant messaging screen. Notably, customercontact need not be initiated from the kiosk, but can occur from anylocation, such as the customer'S home, or via a telephone independent ofthe kiosk.

[0032] In step 310, the call center employee initiates the call centerapplication. Notably, the application can already be open. In step 315,the call center employee determines the customer distribution channelfrom which the customer is calling. In one embodiment of the invention,the contact mechanism automatically provides the distribution channelused by the customer to the call center employee. For example, in anembodiment where a customer utilizes a teleconference function includedwithin the kiosk to contact the call center, the call center employeecan be notified by the teleconferencing function that the customer isutilizing a kiosk. In another embodiment, the call center employee maydetermine the relevant distribution channel by asking the customer.

[0033] In any event, once the customer distribution channel has beendetermined the method can proceed to step 320, where the call centeremployee selects the designated channel from within the CRM call centerapplication. Notably, the CRM call center application allows the callcenter employee to access information for each distribution channel. Forexample, in one embodiment, the center employee can click a menu optionfrom within the call center application to pull up a designateddistribution channel, such as the kiosk. In another embodiment, the callcenter employee can utilize a browser from within the call centerapplication that accesses customer loyalty information. Regardless ofthe method through which access is granted within a particularembodiment, the call center employee will be granted independent accessto the same source information available to the customer. Additionally,the method can grant this independent access concurrently to both thecustomer and the call center employee.

[0034] In step 325, the call center employee acquires the customerspecific information from the call center application for the customer.The call center employee can, but need not, access the same informationthat the customer is displaying. Once the information has been acquiredin step 325, the call center employee can provide the customer with aresponse in step 330.

[0035] The various GUIs disclosed herein are shown for purposes ofillustration only. Accordingly, the present invention is not limited bythe particular GUI or data entry mechanisms contained within views ofthe GUI. Rather, those skilled in the art will recognize that any of avariety of different GUI types and arrangements of data entry, fields,selectors, and controls can be used.

[0036] The present invention can be realized in hardware, software, or acombination of hardware and software. The present invention can berealized in a centralized fashion in one computer system or in adistributed fashion where different elements are spread across severalinterconnected computer systems. Any kind of computer system or otherapparatus adapted for carrying out the methods described herein issuited. A typical combination of hardware and software can be ageneral-purpose computer system with a computer program that, when beingloaded and executed, controls the computer system such that it carriesout the methods described herein.

[0037] The present invention also can be embedded in a computer programproduct, which comprises all the features enabling the implementation ofthe methods described herein, and which when loaded in a computer systemis able to carry out these methods. Computer program in the presentcontext means any expression, in any language, code or notation, of aset of instructions intended to cause a system having an informationprocessing capability to perform a particular function either directlyor after either or both of the following: a) conversion to anotherlanguage, code or notation; b) reproduction in a different materialform.

[0038] This invention can be embodied in other forms without departingfrom the spirit or essential attributes thereof. Accordingly, referenceshould be made to the following claims, rather than to the foregoingspecification, as indicating the scope of the invention.

What is claimed is:
 1. A method for implementing a customer relationship management system comprising the step of displaying a first unified graphical user interface within a customer relationship management call center application, within said graphical user interface, presenting a first view for displaying “restricted information” available only to authorized call center personnel, within said graphical user interface, presenting a second view, said second view displaying publicly accessible information accessed from a remote network location which is common to one or more of a plurality of distribution channels.
 2. The method of claim 1, wherein said second view is a browser window integrated within said graphical user interface, said browser window configured to access a remote shared software agent.
 3. A method for implementing a customer relationship management system comprising the steps of: establishing a plurality of customer contact channels within a customer relationship management system; associating at least one software component with each of said customer contact channels; and, accessing at least one shared software agent from said software components through a publicly accessible network, wherein each said shared software agent independently performs at least one data management task and displays at least one visual element within a graphical user interface of an accessing software component, wherein one of said software components is a call center application configured to access each of said shared software agents within said customer relationship management system.
 4. The method of claim 3, further comprising the steps of: displaying one or more of the visual elements of said shared software agent within a first software component; and, simultaneously displaying one or more of the visual elements of said shared software agent within a second software component, wherein said displaying step of said first software component operates independently from said displaying step of said second software component.
 5. The method of claim 4, further comprising the steps of: restricting access to a first software component to authorized call center personnel; and, publicly granting access to a second software component.
 6. The method of claim 4, further comprising the steps of: recording customer specific information; and, utilizing said customer specific information from within said shared software agent.
 7. The method of claim 3, wherein said software component comprises at least one component selected from the group consisting of a customer service application, a sales facilitating application, a data analysis application, a campaign management application, a Web site, and a retail outlet application.
 8. A customer relationship management system comprising: a shared software agent disposed within a publicly accessible network, wherein said shared software agent is configured to independently perform a data management task, and wherein said shared software agent further comprises visual elements displayable by a graphical user interface of an accessing software component; a call center component configured to access said shared software agent over the publicly accessible network, wherein access to said call center component is restricted to authorized call center personnel; and, a customer component configured to access said shared software agent over the publicly accessible network, wherein said customer component is publicly accessible and remotely located from said call center component.
 9. The system of claim 8, further comprising a software agent view, within which the visual elements of said shared software agents are contained, wherein a graphical user interface of said call center component displays said software agent view, and wherein a graphical user interface of said customer component simultaneously displays said software agent view.
 10. The system of claim 8, wherein said shared software agent further comprises: a customer restricted segment, wherein access to said customer restricted segment via said customer component requires a customer password; and, a non-restricted segment, wherein access is publicly granted.
 11. The system of claim 10, wherein access to said customer restricted segment via said call center component does not require the customer password.
 12. The system of claim 8, wherein said business component comprises at least one component selected from the group consisting of a customer service application, a sales facilitating application, a data analysis application, and a campaign management application.
 13. A machine-readable storage having stored thereon, a computer program having a plurality of code sections, said code sections executable by a machine for causing the machine to perform the step of displaying a first unified graphical user interface within a customer relationship management call center application, within said graphical user interface, presenting a first view for displaying “restricted information” available only to authorized call center personnel, within said graphical user interface, presenting a second view, said second view displaying publicly accessible information accessed from a remote network location which is common to one or more of a plurality of distribution channels.
 14. The machine-readable storage of claim 13, wherein said second view is a browser window integrated within said graphical user interface, said browser window configured to access a remote shared software agent.
 15. A machine-readable storage having stored thereon, a computer program having a plurality of code sections, said code sections executable by a machine for causing the machine to perform the steps of: establishing a plurality of customer contact channels within a customer relationship management system; associating at least one software component with each of said customer contact channels; and, accessing at least one shared software agent from said software components through a publicly accessible network, wherein each said shared software agent independently performs at least one data management task and displays at least one visual element within a graphical user interface of an accessing software component, wherein one of said software components is a call center application configured to access each of said shared software agents within said customer relationship management system.
 16. The machine-readable storage of claim 15, further comprising the steps of: displaying one or more of the visual elements of said shared software agent within a first software component; and, simultaneously displaying one or more of the visual elements of said shared software agent within a second software component, wherein said displaying step of said first software component operates independently from said displaying step of said second software component.
 17. The machine-readable storage of claim 16, further comprising the steps of: restricting access to a first software components to authorized call center personnel; and, publicly granting access to a second software component.
 18. The machine-readable storage of claim 16, further comprising the steps of: recording customer specific information; and, utilizing said customer specific information from within said shared software agent.
 19. The machine-readable storage of claim 15, wherein said software component comprises at least one component selected from the group consisting of a customer service application, a sales facilitating application, a data analysis application, a campaign management application, a Web site, and a retail outlet application. 